﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using TwoGesture.Resources;

namespace TwoGesture
{
    public partial class formularioPreguntas : Form
    {

        ControlExamen objCtrExa = ControlExamen.InsCtrExamen();
        List<PreguntasCuestionario> lista = new List<PreguntasCuestionario>();
        string pacienteId;
        string cuestionarioId;
        int cont = 0;
        int total = 0;

        public formularioPreguntas()
        {
            InitializeComponent();
                     
        }

        private void llenarFormulario()
        {
            lblPreguntalistada.Text = lista[cont].descpregunta;
            rbnrespuestalistada1.Text = lista[cont].descrespuesta1;
            rbnrespuestalistada2.Text = lista[cont].decrespuesta2;
            rbnrespuestalistada3.Text = lista[cont].decrespuesta3;
            rbnrespuestalistada4.Text = lista[cont].decrespuesta4;
        }

        public void recibe_datos(string paciente,string cuentionario)
        {
            pacienteId = paciente;
            cuestionarioId = cuentionario;
            lista = objCtrExa.ListarPreguntas(cuestionarioId,pacienteId);
            lblUsuarioId.Text = pacienteId;
            lblCuestionarioId.Text=cuestionarioId;
            llenarFormulario();
            

        }

        private void button1_Click(object sender, EventArgs e)
        {
            if (rbnrespuestalistada1.Checked == true)
            {
                total = total + lista[cont].valor1;
                lista[cont].idcorracta = lista[cont].idrespuesta1;
                cont++;
                if (cont < lista.Count)
                {
                    rbnrespuestalistada1.Checked = false;
                    llenarFormulario();
                    if (cont == lista.Count()-1)
                    {
                        this.btnSiguintePregunta.Text = "Finalizar Test";
                    }
                }
                else
                {
                    objCtrExa.guardarRespuestasUsuario(pacienteId,cuestionarioId,lista);
                    
                    Formulario_salida frmSalida = new Formulario_salida();
                    frmSalida.lblPuntiacion.Text = total.ToString()+"/80";
                    objCtrExa.guardarcalificacion(frmSalida.lblPuntiacion.Text,pacienteId,cuestionarioId);
                    frmSalida.Show();
                    this.Hide();
                }
                
            }
            else if(rbnrespuestalistada2.Checked == true)
            {
                total = total + lista[cont].valor2;
                lista[cont].idcorracta = lista[cont].idrespuesta2;
                cont++;
                if (cont < lista.Count)
                {
                    rbnrespuestalistada2.Checked = false;
                    llenarFormulario();
                    if (cont == lista.Count() - 1)
                    {
                        this.btnSiguintePregunta.Text = "Finalizar Test";
                    }
                }
                else
                {
                    objCtrExa.guardarRespuestasUsuario(pacienteId, cuestionarioId, lista);

                    Formulario_salida frmSalida = new Formulario_salida();
                    frmSalida.lblPuntiacion.Text = total.ToString() + "/80";
                    frmSalida.Show();
                    this.Hide();
                }
            }
            else if(rbnrespuestalistada3.Checked == true)
            {
                total = total + lista[cont].valor3;
                lista[cont].idcorracta = lista[cont].idrespuesta3;
                cont++;
                if (cont < lista.Count)
                {
                    rbnrespuestalistada3.Checked = false;
                    llenarFormulario();
                    if (cont == lista.Count() - 1)
                    {
                        this.btnSiguintePregunta.Text = "Finalizar Test";
                    }
                }
                else
                {
                    objCtrExa.guardarRespuestasUsuario(pacienteId, cuestionarioId, lista);

                    Formulario_salida frmSalida = new Formulario_salida();
                    frmSalida.lblPuntiacion.Text = total.ToString() + "/80";
                    frmSalida.Show();
                    this.Hide();
                }
                
            }
            else if(rbnrespuestalistada4.Checked == true)
            {
                total = total + lista[cont].valor4;
                lista[cont].idcorracta = lista[cont].idrespuesta4;
                cont++;
                if (cont < lista.Count)
                {
                    rbnrespuestalistada4.Checked = false;
                    llenarFormulario();
                    if (cont == lista.Count() - 1)
                    {
                        this.btnSiguintePregunta.Text = "Finalizar Test";
                    }
                }
                else
                {
                    objCtrExa.guardarRespuestasUsuario(pacienteId, cuestionarioId, lista);

                    Formulario_salida frmSalida = new Formulario_salida();
                    frmSalida.lblPuntiacion.Text = total.ToString() + "/80";
                    frmSalida.Show();
                    this.Hide();
                }
                

            }

            else
            {
                MessageBox.Show("Aun no seleccionas una respuesta \n porfabor selecciona una respuesta");
            }
            
        }
    }
}
